Skip to content

Conversation

@broccolini
Copy link
Contributor

The Chrome team are planning to deprecate BlinkMacSystemFont in favor of system-ui. This causes us a problem with supporting Linux while ensuring MacOS Chrome still gets system fonts. Some people browse the web in English but use their operating system in another language, fonts for a languages such as Chinese, Korean, or Japanese will not render well for a latin-based languages like English. Therefore using system-ui high in the font stack would cause problems for these users. Here's some example feedback from when we updated to system-ui previous and quickly rolled back!:

Guys, when you do something change this crucial please think twice, especially when it's related to i18n. You should realize there are people who are using non-English system but browsing your website in English.

Using "system-ui" as high priority font-family will end up display your website in a non-optimal font on webkit/blink engine browsers (fortunately it seems not affect Firefox).
It looks very ugly when the user is using Chinese, Korean, Japanese Windows OS, particularly. Because there default system UI font is designed to display characters in their corresponding languages, not for Latin letters in English.

After a some research, the following stack is what I think might work and would like to test:
-apple-system, "Segoe UI", Oxygen-Sans, Ubuntu, Cantarell, system-ui, Roboto, Helvetica, Arial, sans-serif;

Here's why each font is in that order:

  • -apple-system for Safari (iOS & macOS) and Firefox macOS
  • Segoe UI for Windows
  • Oxygen-Sans for KDE
  • Ubuntu for Ubuntu
  • Cantarell for GNOME
  • system-ui for Chrome macOS (has to come after linux fonts so as not to override)
  • Roboto for Android and Chrome OS (after system-ui so as not to override Chrome on macOS)
  • Helvetica for versions of macOS prior to 10.11 (unsure why we didn't go with Helvetica Neue)
  • Arial - unsure if we had this here just for linux and is now unnecessary?
  • sans-serif, the standard fallback

I don't like how heavy handed this feels, and am worried that this stack won't cover all use cases. However I'm hoping it will cover "enough". Open to better (ideally simpler) suggestions!

cc @mdo @primer/design-systems

@broccolini broccolini changed the title update system font stack to system-ui for testing Update system font stack to system-ui for testing Dec 5, 2017
@mdo
Copy link
Contributor

mdo commented Dec 5, 2017

We previously had Cantarell and and Ubuntu in there and the Linux folks weren't happy. Ubuntu is an odd font for entire body copy and while folks seem to accommodate it for Linux's UI, on our site it wasn't well received. Same with Cantarell I think? I can't recall exactly why that one was removed. I'm also unsure about Oxygen.

@shawnbot shawnbot changed the base branch from master to release-11.0.0 October 17, 2018 20:54
@shawnbot shawnbot force-pushed the release-11.0.0 branch 2 times, most recently from a7a0780 to 7860079 Compare January 25, 2019 22:55
@shawnbot shawnbot changed the base branch from release-11.0.0 to master February 20, 2019 18:17
@shawnbot
Copy link
Contributor

Closing because this is super stale and we haven't quite figured out the right stack yet. Let's continue the discussion in #838.

@shawnbot shawnbot closed this Jul 17, 2019
@shawnbot shawnbot deleted the fs_update branch July 17, 2019 20:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants